# GlobalConstants.gd（类脚本）
class_name GlobalConstants

# 数学常数
const MATH_EPSILON: float = 1e-6
const SQRT2: float = 1.41421356237

# 游戏常数
const CARD_SCENE := preload("res://scenes/game_levels/CardBase.tscn")
const MAX_CARD_INSTANCES := 100  # 单局最大卡牌实例数

enum Difficulty { EASY, NORMAL, HARD }
const BASE_STAMINA: float = 100.0
const MAX_ALTITUDE: int = 2100
const CHAIN_DECAY_RATE: float = 0.85

const BASE_SCALE := Vector2.ONE  # 基础卡牌缩放
const HIGHLIGHT_SCALE := Vector2(1.2, 1.2)  # 卡牌高亮缩放
const HIGHLIGHT_ZINDEX := 100

const VERTICAL_SPACING := 62  # 纵向固定间距
const HORIZONTAL_SPACING := 41  # 水平固定间距
const MAX_LAYERS := 5         # 最大层数
const ENEMY_COUNT := 10 #敌人卡牌总数
const CARD_WIDTH := 130 #敌人卡牌间隔
const ENEMY_Y_POS := 890 #敌人卡牌y坐标
# 物理参数
const GRAVITY: Vector2 = Vector2(0, 980)
const TERRAIN_FRICTION: float = 0.8

# 调试标志
static var debug_show_hitboxes: bool = false
static var viewport_size

# 辅助计算方法
static func remap(value: float, in_min: float, in_max: float, out_min: float, out_max: float) -> float:
	return (value - in_min) * (out_max - out_min) / (in_max - in_min) + out_min
